package controlStructure;

import java.util.Scanner;

/**
 * 分支控制结构(switch)
 */
public class Switch {

    public static void main(String[] args) {
        /*
            请编写一个程序，该程序可以接收一个字符，比如:a,b,c,d,e,f,g
            a 表示星期一，b表示星期二 …
            根据用户的输入显示相应的信息.要求使用 switch 语句完成
         */
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入字符：");
        char c = scanner.next().charAt(0);
        switch (c) {
            case 'a':
                System.out.println("星期一");
                break;
            case 'b':
                System.out.println("星期二");
                break;
            case 'c':
                System.out.println("星期三");
                break;
            case 'd':
                System.out.println("星期四");
                break;
            case 'e':
                System.out.println("星期五");
                break;
            case 'f':
                System.out.println("星期六");
                break;
            case 'g':
                System.out.println("星期日");
                break;
            default:
                System.out.println("你输入的字符不正确，没有匹配的");
        }
        System.out.println("退出了switch,继续执行程序");

        //1.表达式数据类型应该和case后的类型一致，或者可以自动转换。如：输入字符，case后类型为int
        //2.switch(表达式)中表达式的返回值必须是：(byte short int char enum String)
        //3.case子句中必须是常量不能是变量
        //4.default子句是可选的，当没有匹配的case时，执行default
        //5.break语句用来在执行完一个case子句后跳出switch语句块，如果没有break则会顺序执行至switch结尾，除非遇到break
        /*6.可以多个case子句返回一个结果，
            如：case 'a':
                case 'b':
                case 'c':
                    System.out.println("同一结果");
                    break;
        */


    }
}
